package com.zksk.mbg.admin.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.zksk.common.core.web.domain.BaseEntity;
import java.time.LocalDateTime;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import java.io.Serializable;

/**
 * <p>
 * 招标实时数据表
 * </p>
 *
 * @author Zksk Acmen
 * @since 2022-12-15
 */
@Data
@Accessors(chain = true)
@TableName("platform_fact_biding")
@ApiModel(value = "Biding对象", description = "招标实时数据表")
public class Biding extends BaseEntity {

    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private String id;

    @ApiModelProperty("项目名称")
    @TableField("project_name")
    private String projectName;

    @ApiModelProperty("项目编号")
    @TableField("project_code")
    private String projectCode;

    @ApiModelProperty("标段名称")
    @TableField("section_name")
    private String sectionName;

    @ApiModelProperty("标段编号")
    @TableField("section_code")
    private String sectionCode;

    @ApiModelProperty("招标单位名称")
    @TableField("tenderee_name")
    private String tendereeName;

    @ApiModelProperty("招标单位统一信用代码")
    @TableField("tenderee_code")
    private String tendereeCode;

    @ApiModelProperty("招标单位地址")
    @TableField("tenderee_address")
    private String tendereeAddress;

    @ApiModelProperty("招标单位联系方式")
    @TableField("tenderee_phone")
    private String tendereePhone;

    @ApiModelProperty("招标单位联系人")
    @TableField("tenderee_contact")
    private String tendereeContact;

    @ApiModelProperty("开标时间")
    @TableField("open_time")
    private LocalDateTime openTime;

    @ApiModelProperty("投标截止时间")
    @TableField("tender_etime")
    private LocalDateTime tenderEtime;

    @ApiModelProperty("招标代理机构")
    @TableField("agent_company")
    private String agentCompany;

    @ApiModelProperty("招标代理机构地址")
    @TableField("agent_address")
    private String agentAddress;

    @ApiModelProperty("招标代理机构联系人")
    @TableField("agent_contact")
    private String agentContact;

    @ApiModelProperty("招标代理机构联系电话")
    @TableField("agent_phone")
    private String agentPhone;

    @ApiModelProperty("招标文件获取开始时间")
    @TableField("file_get_stime")
    private LocalDateTime fileGetStime;

    @ApiModelProperty("招标文件获取结束时间")
    @TableField("file_get_etime")
    private LocalDateTime fileGetEtime;

    @ApiModelProperty("招标文件下载地址")
    @TableField("file_download")
    private String fileDownload;

    @ApiModelProperty("项目概况与招标范围")
    @TableField("project_details")
    private String projectDetails;

    @ApiModelProperty("招标公告地址")
    @TableField("notice_url")
    private String noticeUrl;

    @ApiModelProperty("文件获取（时间、地点、方式）")
    @TableField("file_get")
    private String fileGet;

    @ApiModelProperty("文件递交（截至时间、地点、投标文件解密时间及方式等）")
    @TableField("file_submit")
    private String fileSubmit;

    @ApiModelProperty("项目类型（工程建设、政府采购）")
    @TableField("project_type")
    private String projectType;

    @ApiModelProperty("服务类型（交通、水利、市政，货物、服务、工程等）")
    @TableField("service_type")
    private String serviceType;

    @ApiModelProperty("发布公告的媒介")
    @TableField("medinum")
    private String medinum;

    @ApiModelProperty("交易来源")
    @TableField("bus_source")
    private String busSource;

    @ApiModelProperty("所属行政区域")
    @TableField("area")
    private String area;

    @ApiModelProperty("所属行政区域编码")
    @TableField("area_code")
    private Integer areaCode;

    @ApiModelProperty("保证金金额")
    @TableField("guarantee_amount")
    private Integer guaranteeAmount;


    public static final String ID = "id";

    public static final String PROJECT_NAME = "project_name";

    public static final String PROJECT_CODE = "project_code";

    public static final String SECTION_NAME = "section_name";

    public static final String SECTION_CODE = "section_code";

    public static final String TENDEREE_NAME = "tenderee_name";

    public static final String TENDEREE_CODE = "tenderee_code";

    public static final String TENDEREE_ADDRESS = "tenderee_address";

    public static final String TENDEREE_PHONE = "tenderee_phone";

    public static final String TENDEREE_CONTACT = "tenderee_contact";

    public static final String OPEN_TIME = "open_time";

    public static final String TENDER_ETIME = "tender_etime";

    public static final String AGENT_COMPANY = "agent_company";

    public static final String AGENT_ADDRESS = "agent_address";

    public static final String AGENT_CONTACT = "agent_contact";

    public static final String AGENT_PHONE = "agent_phone";

    public static final String FILE_GET_STIME = "file_get_stime";

    public static final String FILE_GET_ETIME = "file_get_etime";

    public static final String FILE_DOWNLOAD = "file_download";

    public static final String PROJECT_DETAILS = "project_details";

    public static final String NOTICE_URL = "notice_url";

    public static final String FILE_GET = "file_get";

    public static final String FILE_SUBMIT = "file_submit";

    public static final String PROJECT_TYPE = "project_type";

    public static final String SERVICE_TYPE = "service_type";

    public static final String MEDINUM = "medinum";

    public static final String BUS_SOURCE = "bus_source";

    public static final String AREA = "area";

    public static final String AREA_CODE = "area_code";

    public static final String GUARANTEE_AMOUNT = "guarantee_amount";

    @Override
    public Serializable pkVal() {
        return this.id;
    }

}
